Multicast enables communication between a single sender and multiple receivers on a network. Software delivery, teleconferencing, financial information delivery, and other loss-sensitive applications may require guaranteed delivery to each receiver. A reliable multicast protocol ensures that a reliable sequence of packets is provided to multiple receivers.